package com.ecommerce.product.domain;

import lombok.Data;

/**
 * 商品分类领域对象
 * <p>
 * 表示电商系统中的商品分类结构，支持多级分类体系。
 * 用于构建商品分类树形结构，支持一级和二级分类。
 * </p>
 */
@Data
public class ProductCategory {
    /**
     * 分类唯一标识符
     * <p>
     * 主键ID，通常由数据库自增生成
     * </p>
     */
    private Long id;

    /**
     * 分类名称
     * <p>
     * 展示给用户的分类名称，如"电子产品"、"服装"等
     * </p>
     */
    private String name;

    /**
     * 父分类ID
     * <p>
     * 用于构建分类层级关系：
     * - 一级分类的parentId通常为null或0
     * - 二级分类的parentId指向对应的一级分类ID
     * </p>
     */
    private Long parentId;

    /**
     * 分类层级
     * <p>
     * 表示分类在层级结构中的位置：
     * 1 - 一级类目（顶级分类）
     * 2 - 二级类目（子分类）
     * </p>
     */
    private Integer level; // 1-一级类目 2-二级类目
}